package com.lhd.qd.module.system.dict.model.converter;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lhd.qd.module.system.dict.model.dataobj.DictTypeDO;
import com.lhd.qd.module.system.dict.model.dto.DictTypeSaveDTO;
import com.lhd.qd.module.system.dict.model.dto.DictTypeUpdateDTO;
import com.lhd.qd.module.system.dict.model.vo.DictTypeDetailVO;
import com.lhd.qd.module.system.dict.model.vo.DictTypeListVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

@Mapper
public abstract class AbstractDictTypeConverter {

    public static AbstractDictTypeConverter INSTANCE = Mappers.getMapper(AbstractDictTypeConverter.class);

    public abstract Page<DictTypeListVO> doPage2ListVOPage(IPage<DictTypeDO> doPage);

    public abstract DictTypeDetailVO do2DetailVO(DictTypeDO dataObj);

    public abstract DictTypeDO saveDTO2DO(DictTypeSaveDTO saveDTO);

    public abstract DictTypeDO updateDTO2DO(DictTypeUpdateDTO updateDTO);
}
